l=[]
ans=["","","","","","","","",""]
for j in range(8,-1,-1):
for i in range(1,j+2):
ans[j]=str(i)
l.append("".join(ans))
for j in range(int(input())):
n=int(input())
if n>45:
print(-1)
else:
print(l[n-1])
#include<bits/stdc++.h>
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
int n;
cin>>n;
int power=1;
int k=0;
for(int i=9;i>=1;i--){
if(n>=i){
n-=i;
k=k+i*power;
power*=10;
}
}
if(n==0){
cout<<k<<endl;
}
else{
cout<<-1<<endl;
}
}
}
411A - Password Check | 1520C - Not Adjacent Matrix |
1538B - Friends and Candies | 580A - Kefa and First Steps |
1038B - Non-Coprime Partition | 43A - Football |
50A - Domino piling | 479A - Expression |
1480A - Yet Another String Game | 1216C - White Sheet |
1648A - Weird Sum | 427A - Police Recruits |
535A - Tavas and Nafas | 581A - Vasya the Hipster |
1537B - Bad Boy | 1406B - Maximum Product |
507B - Amr and Pins | 379A - New Year Candles |
1154A - Restoring Three Numbers | 750A - New Year and Hurry |
705A - Hulk | 492B - Vanya and Lanterns |
1374C - Move Brackets | 1476A - K-divisible Sum |
1333A - Little Artem | 432D - Prefixes and Suffixes |
486A - Calculating Function | 1373B - 01 Game |
1187A - Stickers and Toys | 313B - Ilya and Queries |